package com.onesports.intelligent.k12.polarlight.domain.vo.sys;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.onesports.intelligent.k12.polarlight.domain.vo.common.AuthTreeVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.Instant;
import java.util.List;
import java.util.Map;

/**
 * @author Wsy
 **/
@Data
@ApiModel("角色VO")
public class RoleVO {

    @ApiModelProperty(value = "角色id")
    private String id;

    @ApiModelProperty("角色名称")
    private String roleName;

    @ApiModelProperty("成员数量")
    private Integer memberAmount;

    @ApiModelProperty("是否超管 true 是 false: 否")
    private Boolean isSuper;

    @ApiModelProperty("单位id")
    private String organizationId;

    @ApiModelProperty("创建者")
    private String createdBy;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Instant createdDate;

    @ApiModelProperty("lastModifiedBy")
    private String lastModifiedBy;

    @ApiModelProperty("修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Instant lastModifiedDate;

    @ApiModelProperty("运营端-已有菜单权限")
    private List<AuthTreeVO> list;

    @ApiModelProperty("机构端-已有菜单权限")
    private Map<String,List<AuthTreeVO>> maps;

    @ApiModelProperty("数据权限ID集合")
    private List<String> dataScopeIds;

    @ApiModelProperty("是否查询全部数据")
    private Boolean wholeData;
}
